var orgId = '';
var orgName = '';
$(function() {
	// 加载的时候去cookie拿当前页面的样式
	if ($.cookie('easyuiThemeName')) {
		parent.changeThemeFun($.cookie('easyuiThemeName'));
	}
	$('#sysUserList')
			.datagrid(
					{
						width : $(window).width() - 17, // 宽度，这里算的是iframe的宽度。
						height : $(window).height() - 117,
						nowrap : false,
						striped : true,
						collapsible : true,
						url : "findAllSysUsers?"
								+ encodeURI($("#searchForm").ajaxForm()
										.formSerialize()),
						// idField : 'code',
						// 需冻结的列
						frozenColumns : [ [ {
							field : 'ck',
							checkbox : true
						} ] ],
						// 表头
						columns : [ [ {
							field : 'id',
							title : 'id',
							hidden : true,
							width : 10
						}, {
							field : 'realName',
							title : '名称',
							width : 120
						}, {
							field : 'identityCard',
							title : '身份证号码',
							width : 80
						}, {
							field : 'userName',
							title : '用户名',
							width : 120
						}, {
							field : 'orgNames',
							title : '组织',
							width : 120
						}, {
							field : 'mobile',
							title : '手机号码',
							width : 80
						}, {
							field : 'flag',
							// title : '状态',
							width : 80,
							hidden : true
						} ] ],
						// 是否把数据显示在一行上，如果设置为false，当数据长度超过列长度时，超过的部分被截掉
						nowrap : true,
						// 是否包含页脚的分页
						pagination : true,
						rownumbers : true,
						singleSelect : false
					// 单选
					});

	$('#sysRoleList').datagrid({
		width : 396, // 宽度，这里算的是iframe的宽度。
		height : 231,
		nowrap : false,
		striped : true,
		collapsible : true,
		url : 'findAllSysRoles',
		// idField : 'code',
		// 需冻结的列
		frozenColumns : [ [ {
			field : 'ck',
			checkbox : true
		}, ] ],
		// 表头
		columns : [ [ {
			field : 'id',
			title : 'id',
			hidden : true,
			width : 10
		}, {
			field : 'code',
			title : '角色代码',
			width : 60
		}, {
			field : 'name',
			title : '角色名称',
			width : 80
		}, {
			field : 'remark',
			title : '备注',
			width : 100
		} ] ],
		// 是否把数据显示在一行上，如果设置为false，当数据长度超过列长度时，超过的部分被截掉
		nowrap : true,
		// 是否包含页脚的分页
		pagination : false,
		rownumbers : true,
		singleSelect : false
	// 单选
	});
	
	$('#sysCompanyList').datagrid({
		// title : '集团信息列表', // 列表title
		width : 396, // 宽度，这里算的是iframe的宽度。
		height : 231,
		nowrap : false,
		striped : true,
		collapsible : true,
		url : 'findCompanyList',
		// datatype : "local",
		// idField : 'code',
		// 需冻结的列
		frozenColumns : [ [] ],
		// 表头
		columns : [ [ {
			field : 'id',
			title : 'id',
			hidden : true,
			width : 10
		}, {
			field : 'companyName',
			title : '公司名称',
			width : 120
		}, {
			field : 'companyCode',
			title : '公司简码',
			width : 80
		}] ],
		// 是否把数据显示在一行上，如果设置为false，当数据长度超过列长度时，超过的部分被截掉
		nowrap : true,
		// 是否包含页脚的分页
		pagination : false,
		rownumbers : true,
		singleSelect : true
	// 单选
	});

	$("#roleName").click(function() {
		$("#sysRoleSelect").dialog("open");
		$('#sysRoleList').datagrid('clearSelections');
	});

	// 绑定添加组织窗口
	$("#orgNames").click(
			function() {
				$("#organizationSelect").dialog("open");
				$("#sysOrganizationTree").jstree({// menu_tree 为
					// 由Jquery选择器选中的DIV容器的ID
					"themes" : {
						"theme" : "classic",
						"dots" : true,
						"icons" : true
					},
					"json_data" : {
						"ajax" : {
							"url" : "findAllSysOrganizations",
							"data" : function(n) {
								return {
									id : n.attr ? n.attr("id") : 0
								};
							}
						}
					},
					"core" : {
						"strings" : {
							"loading" : "组织机构加载中……"
						}
					},
					// 插件使用右键菜单支持自定义右键菜单
					"plugins" : [ "themes", "json_data", "ui", "crrm", ]
				});
				$("#sysOrganizationTree").bind("select_node.jstree",
						function(e, data) {
							node = data.rslt.obj;
							instNode = data.inst;
							var name = $.trim(instNode.get_text());
							orgName = name;
							orgId = node.attr("id");
						});
				$("#sysOrganizationTree").bind("dblclick_node.jstree",
						function(e, data) {
							node = data.rslt.obj;
							instNode = data.inst;
							var name = $.trim(instNode.get_text());
							orgName = name;
							orgId = node.attr("id");
							$("#sysOrganizationIDs").val(orgId);
							$("#orgNames").val(orgName);
							$('#organizationSelect').dialog('close');
						});

			});

	// 组织机构对话框
	$('#organizationSelect').dialog({
		toolbar : [ {
			text : '保存',
			iconCls : 'icon-save',
			handler : function() {
				if (orgId == '') {
					$.messager.alert('提示', "请选择组织机构!");
					return false;
				}
				$("#sysOrganizationIDs").val(orgId);
				$("#orgNames").val(orgName);
				$('#organizationSelect').dialog('close');
			}
		}, '-', {
			text : '取消',
			iconCls : 'icon-cancel',
			handler : function() {
				$('#organizationSelect').dialog('close');
			}
		} ]
	});

	// 组织机构对话框
	$('#sysRoleSelect').dialog({
		toolbar : [ {
			text : '保存',
			iconCls : 'icon-save',
			handler : function() {
				var sys_role_ids = '';
				var sys_role_names = '';
				var gr = $('#sysRoleList').datagrid('getSelections');
				if (gr == '') {
					$.messager.alert('提示', "请选择角色!");
					return false;
				} else {
					var len = gr.length;
					for (var i = 0; i < len; i++) {
						var id = gr[i].id;
						var name = gr[i].name;
						if (sys_role_ids == '')
							sys_role_ids = id;
						else
							sys_role_ids += "," + id;
						if (sys_role_names == '')
							sys_role_names = name;
						else
							sys_role_names += "," + name;
					}
					$('#sysRoleIDs').val(sys_role_ids);
					$('#roleName').val(sys_role_names);
					$('#sysRoleSelect').dialog('close');
				}
			}
		}, '-', {
			text : '取消',
			iconCls : 'icon-cancel',
			handler : function() {
				$('#sysRoleSelect').dialog('close');
			}
		} ]
	});
	// 查询
	$("#searchButton").click(function() {
		toQuery();
	});
	// 绑定所属公司窗口
	$("#companyName").click(function() {
		if ($("#wyId").val() != null && $("#wyId").val() != '') {
			return;
		}
		$("#sysCompanySelect").dialog("open");
		$('#sysCompanyList').datagrid('clearSelections');
	});
	
	// 组织机构对话框
	$('#sysCompanySelect').dialog({
		toolbar : [ {
			text : '选择',
			iconCls : 'icon-save',
			handler : function() {
				var row = $('#sysCompanyList').datagrid('getSelected');
				if (row == '' || row == null) {
					$.messager.alert('提示', "请选择角色!");
					return false;
				} else {				
					$('#wyId').val(row.id);
					$('#companyName').val(row.companyName);
					$('#sysCompanySelect').dialog('close');
				}
			}
		}, '-', {
			text : '取消',
			iconCls : 'icon-cancel',
			handler : function() {
				$('#sysCompanySelect').dialog('close');
			}
		} ]
	});
});
/**
 * 恢复密码
 * 
 * @return
 */
function resetPassword() {
	var gr = $('#sysUserList').datagrid('getSelections');
	if (gr == '') {
		$.messager.alert('提示', "请选择记录!");
	} else {
		var len = gr.length;
		var arrayId = "";
		for (var i = 0; i < len; i++) {
			var id = gr[i].id;
			if (i != len - 1) {
				arrayId += id + ',';
			} else {
				arrayId += id;
			}
		}
		$.messager.confirm('系统提示', '真的要恢复密码吗?', function(r) {
			if (r) {
				var win = $.messager.progress({
					title : '请等待',
					msg : '恢复中...',
					text : ''
				});
				$.post("initPassword?sysUserBean.deleteIDs=" + arrayId, '',
						function(json) {
							$.messager.progress('close');
							if (json.flag) {
								$.messager.alert('提示', "恢复密码人员密码成功!");
							} else {
								$.messager.alert('提示', "恢复密码人员密码失败!");
							}
						});
			}
		});
	}
}

/**
 * 删除
 * 
 * @return
 */
function doDelete() {
	var currentUserId = $("#currentUserId").val();
	var gr = $('#sysUserList').datagrid('getSelections');
	if (gr == '') {
		$.messager.alert('提示', "请选择记录!");
	} else {
		var len = gr.length;
		var arrayId = "";
		for (var i = 0; i < len; i++) {
			var id = gr[i].id;
			if (id == currentUserId) {
				$.messager.alert('提示', "禁止删除当前登录用户!");
				return;
			}
			if (i != len - 1) {
				arrayId += id + ',';
			} else {
				arrayId += id;
			}
			// var flag = jQuery("#list").getRowData(id).flag;
			// if (flag == '0') {
			// $.messager.alert('提示',"禁止删除系统管理人员,请去掉此人员再进行删除操作!");
			// return;
			// }
		}

		$.messager.confirm('系统提示', '真的要删除吗,删除后将无法恢复?', function(r) {
			if (r) {
				var win = $.messager.progress({
					title : '请等待',
					msg : '删除中...',
					text : ''
				});
				$
						.post(
								"deleteSysUsers?sysUserBean.deleteIDs="
										+ arrayId, '', function(json) {
									$.messager.progress('close');
									if (json.flag) {
										$.messager.alert('提示', "删除人员成功!");
										toQuery();
									} else {
										if (json.content != ''
												|| json.content != null) {
											$.messager
													.alert('提示', json.content);
										} else {
											$.messager.alert('提示', "删除人员失败!");
										}
									}
								});
			}
		});
	}
}

/**
 * 打开新增
 * 
 * @return
 */
function openAdd() {
	$("#sysUserForm").ajaxForm().clearForm();
	$('#reFlash').show();// 隐藏刷新按钮
	$('#mydialog').dialog('open');
	$('#userName').removeAttr("readonly");// 用户名禁止修改
	$('#companyName').removeAttr("readonly");// 所属物业公司禁止修改
	$("#opsName").val('add');

	$.post('initCompanyName', '', function(json) {
		if (json.flag) {
			$('#wyId').val(json.wyId);
			$('#companyName').val(json.companyName);
		}
	});
}

/**
 * 打开修改
 * 
 * @return
 */
function openUpdate() {
	var gr = $('#sysUserList').datagrid('getSelections');
	if (gr == '' || gr == null) {
		$.messager.alert('提示', "请选择记录!");
		return false;
	} else {
		var len = gr.length;
		if (len > 1) {
			$.messager.alert('提示', "请选择一条记录!");
			return false;
		}
		if (gr[0].id != null && gr[0].id != '') {
			$.post("findSysUser?sysUserBean.id=" + gr[0].id, '',
					function(json) {
						$("#realName").val(json.sysUserBean.realName);
						$("#userName").val(json.sysUserBean.userName);
						$("#password").val(json.sysUserBean.password);
						$("#identityCard").val(json.sysUserBean.identityCard);
						$("#sysOrganizationIDs").val(
								json.sysUserBean.sysOrganizationIDs);
						$("#orgNames").val(json.sysUserBean.orgNames);
						$("#sysRoleIDs").val(json.sysUserBean.sysRoleIDs);
						$("#roleName").val(json.sysUserBean.roleName);
						$("#mobile").val(json.sysUserBean.mobile);
						$("#id").val(json.sysUserBean.id);
						$('#userName').attr("readonly", "readonly");// 用户名禁止修改
						$("#companyName").attr("readonly", "readonly");
						$("#opsName").val('update');
						$('#wyId').val(json.sysUserBean.wyId);
						$('#companyName').val(json.sysUserBean.enterpriseName);
					});
			$('#reFlash').hide();// 隐藏刷新按钮
			$('#mydialog').dialog('open');
		} else {
			$.messager.alert('提示', "加载数据失败请稍候再试！");
		}

	}

}
/**
 * 关闭窗口
 * 
 * @return
 */
function closeDialog() {
	// 清空
	// $('#sysUser').form('clear');
	resetForm();
	$('#mydialog').dialog('close');
}

/**
 * 保存
 * 
 * @return
 */
function submitForm() {
	var win = $.messager.progress({
		title : '请等待',
		msg : '保存中...',
		text : ''
	});
	var opsName = $("#opsName").val();
	// 表单验证
	var flag = $('#sysUserForm').form('validate');
	if (!flag) {
		$.messager.progress('close');
		$.messager.alert('提示', "请填写必填项!");
		return false;
	}
	var url = 'saveSysTemUser';
	// //update代表修改提交，其他的为新增提交
	// if(opsName == 'update'){
	// url = '';
	// }
	var data = encodeURI($("#sysUserForm").ajaxForm().formSerialize());
	$.post(url, data, function(json) {
		$.messager.progress('close');
		if (json.flag == null || json.flag == '' || json.flag == undefined) {
			if(json.content != null && json.content != ''){
				$.messager.alert('提示', "保存人员失败!原因：" + json.content);
			}else{
				$.messager.alert('提示', "保存人员失败!");
			}
			return;
		}
		if (json.flag) {
			resetForm();
			$('#mydialog').dialog('close');
			$.messager.alert('提示', "保存人员成功!");
			toQuery();
		}
	});
}

function toQuery() {
	$('#sysUserList')
			.datagrid(
					{
						url : "findAllSysUsers?"
								+ encodeURI($("#searchForm").ajaxForm()
										.formSerialize())
					});
}
/**
 * 清空新增表单
 * 
 * @return
 */
function resetForm() {
	$("#realName").val('');
	$("#userName").val('');
	$("#password").val('');
	$("#identityCard").val('');
	$("#sysOrganizationIDs").val('');
	$("#orgNames").val('');
	$("#sysRoleIDs").val('');
	$("#roleName").val('');
	$("#mobile").val('');
	$("#id").val('');
	$("#opsName").val('');

}
/**
 * 清空组织挂接
 * 
 * @return
 */
function resetOrgs() {
	$("#sysOrganizationIDs").val('');
	$("#orgNames").val('');
}
/**
 * 清空角色挂接
 * 
 * @return
 */
function resetAuth() {
	$("#sysRoleIDs").val('');
	$("#roleName").val('');
}